package com.shrct.businessprocess.product;

import com.shrct.businessprocess.product.RCProductSpecification;
import com.shrct.businessprocess.product.RCServiceInfo;
import com.shrct.businessprocess.product.RCServiceLevel;
import com.shrct.businessprocess.product.RCServiceResponseTime;
import com.shrct.businessprocess.product.impl.RCDerivedFullServiceProductSpecificationImpl;
import com.shrct.businessprocess.product.proxy.RCDerivedFullServiceProductSpecificationProxy;
import edu.fudan.mylang.pf.EntityImplementation;
import edu.fudan.mylang.pf.IModelObject;

@EntityImplementation(implementBy = RCDerivedFullServiceProductSpecificationImpl.class)
public interface RCDerivedFullServiceProductSpecification extends IModelObject {
  public abstract String getCode();
  
  public abstract RCDerivedFullServiceProductSpecification setCode(final String code);
  
  public abstract RCServiceInfo getServiceType();
  
  public abstract RCDerivedFullServiceProductSpecification setServiceType(final RCServiceInfo serviceType);
  
  public abstract RCProductSpecification getOriginal();
  
  public abstract RCDerivedFullServiceProductSpecification setOriginal(final RCProductSpecification original);
  
  public abstract RCServiceLevel getServiceLevel();
  
  public abstract RCServiceResponseTime getServiceResponseTime();
  
  public abstract Integer getMonthes();
  
  public abstract RCDerivedFullServiceProductSpecificationProxy toProxy();
}
